package br.ufrn.example;

import br.pucrio.inf.les.genarch.core.annotations.Feature;
import br.pucrio.inf.les.genarch.core.annotations.FeatureType;

@Feature(name = "B", type=FeatureType.mandatory)
public class B {

	public int b = b1(0,1)+new C().c2();
	
	@Feature(name = "b1", parent="B", type=FeatureType.mandatory)
	public int b1(int x, int y){
		if(y == 0)
			return (int) new D().d1(x, y);
		return x/y;
	}
	
	@Feature(name = "b2", parent="B", type=FeatureType.optional)
	public int b2(int x, int y){
		return x*y*new A().a1();
	}
}
